// pages/login/login.js
// 登录流程：
// 收集表单数据
// 前端验证：账号密码是否合法，不合法提示，合法携带信息发请求
// 后台验证：用户是否存在；密码是否正确；返回给前端（提示或者登陆成功以及信息）
import request from '../../utils/request'
Page({

    /**
     * 页面的初始数据
     */
    data: {
        phone: '',
        password: ''
    },

    /**
     * 生命周期函数--监听页面加载
     */
    onLoad(options) {

    },
    // 双向绑定表单数据，改用model:value='{{phone}}'
    handleInput(event) {
        // console.log(event)
        // let type = event.currentTarget.id 
        // // let type = event.currentTarget.dataset.type
        // this.setData({
        //     [type]: event.detail.value
        // })
    },
    async login() {
        let { phone, password } = this.data
        // 手机号验证：1空，2格式不正确， 3正确
        if(!phone) {
            wx.showToast({
                title: '手机号不能为空',
                icon: 'none',
                duration: 2000
            })    
        }
        let phoneReg = /^1[3-9]\d{9}$/
        if(!phoneReg.test(phone)) {
            wx.showToast({
                title: '请输入正确手机号',
                icon: 'none',
                duration: 2000
            })
            return  
        }
        if(!password) {
            wx.showToast({
                title: '密码不能为空',
                icon: 'none',
                duration: 2000
            })
            return
        }
        // 后台验证
        const result = await request('/login/cellphone', {phone, password, isLogin: true})
        console.log(result)
        if(result.code === 200) {
            wx.showToast({
                title: '登陆成功',
                icon: 'success',
                duration: 2000
            })
            // 本地存储用户信息
            wx.setStorageSync('userInfo', JSON.stringify(result.profile))
            // 登陆成功跳转个人中心
            wx.reLaunch({
              url: '/pages/personal/personal',
            })
        }else {
            wx.showToast({
                title: '登陆失败,请重新登录',
                icon: 'none',
                duration: 2000
            })
        }
    },
    /**
     * 生命周期函数--监听页面初次渲染完成
     */
    onReady() {

    },

    /**
     * 生命周期函数--监听页面显示
     */
    onShow() {

    },

    /**
     * 生命周期函数--监听页面隐藏
     */
    onHide() {

    },

    /**
     * 生命周期函数--监听页面卸载
     */
    onUnload() {

    },

    /**
     * 页面相关事件处理函数--监听用户下拉动作
     */
    onPullDownRefresh() {

    },

    /**
     * 页面上拉触底事件的处理函数
     */
    onReachBottom() {

    },

    /**
     * 用户点击右上角分享
     */
    onShareAppMessage() {

    }
})